๋ธ๋ก์ฒด์ธ, ๋ถ์ฐ ์์คํ ๋ฑ์์ ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ๊ณผ ํจ์จ์ฑ์ ๋ณด์ฅํ๋ ํต์ฌ ์ํธํ ๋ฐ์ดํฐ ๊ตฌ์กฐ์ธ ๋จธํด ํธ๋ฆฌ์ ํ์ ์์๋ณด์ธ์. ๊ธ๋ก๋ฒ ๊ฐ์ด๋์ ๋๋ค.
๋จธํด ํธ๋ฆฌ: ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ ๋ฐ ๋ธ๋ก์ฒด์ธ ๊ธฐ์ ์ ์ํธํ ํต์ฌ
์ ์ ๋ ๋ฐ์ดํฐ ์ค์ฌ์ด ๋๋ ์ธ์์์ ์ ๋ณด์ ๋ฌด๊ฒฐ์ฑ๊ณผ ์ ๋ขฐ์ฑ์ ๋ฌด์๋ณด๋ค ์ค์ํฉ๋๋ค. ๊ตญ๊ฒฝ์ ๋๋ ๊ธ์ต ๊ฑฐ๋๋ถํฐ ๊ธ๋ก๋ฒ ํด๋ผ์ฐ๋ ์ธํ๋ผ์ ์ ์ฅ๋ ์ค์ํ ๋ฌธ์์ ์ด๋ฅด๊ธฐ๊น์ง, ๋ฐ์ดํฐ๊ฐ ๋ณ์กฐ๋์ง ์๊ณ ๊ฒ์ฆ ๊ฐ๋ฅํ๋๋ก ๋ณด์ฅํ๋ ๊ฒ์ ๋ณดํธ์ ์ธ ๊ณผ์ ์ ๋๋ค. ๋ฐ๋ก ์ด ์ง์ ์์ ํด์ ํธ๋ฆฌ๋ผ๊ณ ๋ ๋ถ๋ฆฌ๋ ๋จธํด ํธ๋ฆฌ๋ผ๋ ๊ธฐ๋ฐํ ๊ฐ๋ ์ด ํ๋ ์ํธํ ๋ฐ ๋ถ์ฐ ์์คํ ์ ์ด์์ผ๋ก ๋ฑ์ฅํฉ๋๋ค. ๋จธํด ํธ๋ฆฌ๋ ํ์ ํ๋ฌธ์ ํธ๊ธฐ์ฌ๊ณผ๋ ๊ฑฐ๋ฆฌ๊ฐ ๋ฉ๊ณ , ๋ธ๋ก์ฒด์ธ๊ณผ P2P ๋คํธ์ํฌ๋ฅผ ํฌํจํ์ฌ ์ฐ๋ฆฌ ์๋์ ๊ฐ์ฅ ํ์ ์ ์ธ ๊ธฐ์ ์ ๋ท๋ฐ์นจํ๋ ์กฐ์ฉํ ์ํธ์์ ๋๋ค.
์ด ํฌ๊ด์ ์ธ ๊ฐ์ด๋๋ ๋จธํด ํธ๋ฆฌ๋ฅผ ์ดํดํ๊ธฐ ์ฝ๊ฒ ์ค๋ช ํ๋ฉฐ, ๊ทธ ๊ธฐ๋ณธ ์๋ฆฌ, ๊ตฌ์ฑ, ์ด์ , ๊ทธ๋ฆฌ๊ณ ๋ค์ํ ๊ตญ์ ์ ๋งฅ๋ฝ์์์ ์ค์ธ๊ณ ์ ์ฉ ์ฌ๋ก๋ฅผ ํ๊ตฌํฉ๋๋ค. ๋ ธ๋ จํ ๊ธฐ์ ์์ด๋ , ํธ๊ธฐ์ฌ ๋ง์ ๋ธ๋ก์ฒด์ธ ์ ํธ๊ฐ์ด๋ , ๋๋ ๋จ์ํ ๋ฐ์ดํฐ ๋ณด์์ด ํต์ฌ์ ์ผ๋ก ์ด๋ป๊ฒ ์๋ํ๋์ง์ ๊ด์ฌ์ด ์๋ ์ฌ๋์ด๋ , ๋จธํด ํธ๋ฆฌ๋ฅผ ์ดํดํ๋ ๊ฒ์ ๊ฒ์ฆ ๊ฐ๋ฅํ ์ ๋ณด์ ๋ฏธ๋๋ฅผ ํ์ ํ๋ ๋ฐ ํ์์ ์ ๋๋ค.
๋จธํด ํธ๋ฆฌ๋ ๋ฌด์์ธ๊ฐ? ๋ฐ์ดํฐ ๊ฒ์ฆ์ ์ํ ๊ณ์ธต์ ์ ๊ทผ ๋ฐฉ์
๋ณธ์ง์ ์ผ๋ก ๋จธํด ํธ๋ฆฌ๋ ๋ชจ๋ ๋ฆฌํ ๋ ธ๋๊ฐ ๋ฐ์ดํฐ ๋ธ๋ก์ ์ํธํ ํด์๋ก ๋ ์ด๋ธ๋ง๋๊ณ , ๋ชจ๋ ๋น๋ฆฌํ ๋ ธ๋๊ฐ ์์ ๋ ธ๋์ ์ํธํ ํด์๋ก ๋ ์ด๋ธ๋ง๋๋ ์ด์ง ํธ๋ฆฌ์ ๋๋ค. ์ด๋ฌํ ๊ณ์ธต์ ๊ตฌ์กฐ๋ ๋๊ท๋ชจ ๋ฐ์ดํฐ ์ธํธ๋ฅผ ๋งค์ฐ ํจ์จ์ ์ด๊ณ ์์ ํ๊ฒ ๊ฒ์ฆํ ์ ์๋๋ก ํฉ๋๋ค.
๋ค๊ตญ์ ๊ธฐ์ ์ ์ฌ๋ฌด ๊ธฐ๋ก, ๊ธ๋ก๋ฒ ๋ํ ์ปจ์์์์ ํ์ ์ฐ๊ตฌ ๋ ผ๋ฌธ, ๋๋ ์ ์ธ๊ณ ์๋ฐฑ๋ง ๋์ ์ฅ์น๋ฅผ ์ํ ์ํํธ์จ์ด ์ ๋ฐ์ดํธ์ ๊ฐ์ ๋ฐฉ๋ํ ๋์งํธ ๋ฌธ์ ๋ชจ์์ ๊ฐ์ง๊ณ ์๋ค๊ณ ์์ํด ๋ณด์ธ์. ํน์ ๋ฌธ์๊ฐ ๋ณ์กฐ๋์ง ์์๊ฑฐ๋ ์ ์ฒด ์ปฌ๋ ์ ์ด ์ ํํ ์๋๋๋ก ์ ์ง๋์์์ ๋ชจ๋ ๋ฐ์ดํธ๋ฅผ ๋ค์ด๋ก๋ํ๊ณ ํ์ธํ์ง ์๊ณ ์ด๋ป๊ฒ ํจ์จ์ ์ผ๋ก ์ฆ๋ช ํ ์ ์์๊น์?
๋จธํด ํธ๋ฆฌ๋ ์ ์ฒด ๋ฐ์ดํฐ ์ธํธ์ ๋ํ ๋จ์ผํ๊ณ ๊ณ ์ ํ '์ง๋ฌธ'์ธ ๋จธํด ๋ฃจํธ๋ฅผ ์์ฑํ์ฌ ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํฉ๋๋ค. ์ด ๋ฃจํธ ํด์๋ ์ํธํ ์์ฝ ์ญํ ์ ํฉ๋๋ค. ๋ฌธ์ ๋ด์ ๋จ์ผ ๋นํธ ๋ฐ์ดํฐ๋ผ๋ ๋ณ๊ฒฝ๋๋ฉด ๋จธํด ๋ฃจํธ๊ฐ ๋ณ๊ฒฝ๋์ด ์ฆ์ ๋ณ์กฐ ๋๋ ์์์ ์๋ฆฝ๋๋ค.
๋จธํด ํธ๋ฆฌ์ ๊ตฌ์กฐ
์ด๋ฌํ ๋ง๋ฒ์ด ์ด๋ป๊ฒ ์ผ์ด๋๋์ง ์ดํดํ๊ธฐ ์ํด ๊ตฌ์ฑ ์์๋ฅผ ์ดํด๋ณด๊ฒ ์ต๋๋ค:
- ๋ฆฌํ ๋ ธ๋ (๋ฐ์ดํฐ ํด์): ํธ๋ฆฌ์ ๊ฐ์ฅ ์๋์ ์๋ ๋ ธ๋์ ๋๋ค. ๊ฐ ๋ฆฌํ ๋ ธ๋์๋ ๊ฐ๋ณ ๋ฐ์ดํฐ(์: ํธ๋์ญ์ , ํ์ผ ์ธ๊ทธ๋จผํธ, ๋ฐ์ดํฐ ๋ ์ฝ๋)์ ์ํธํ ํด์๊ฐ ํฌํจ๋ฉ๋๋ค. ์๋ฅผ ๋ค์ด, ๋ค ๊ฐ์ ๋ฐ์ดํฐ ๋ธ๋ก(๋ฐ์ดํฐ A, ๋ฐ์ดํฐ B, ๋ฐ์ดํฐ C, ๋ฐ์ดํฐ D)์ด ์๋ค๋ฉด, ๊ฐ๊ฐ์ ํด์๋ Hash(๋ฐ์ดํฐ A), Hash(๋ฐ์ดํฐ B), Hash(๋ฐ์ดํฐ C), Hash(๋ฐ์ดํฐ D)๊ฐ ๋ฉ๋๋ค.
- ๋น๋ฆฌํ ๋ ธ๋ (๋ด๋ถ ๋ ธ๋): ํธ๋ฆฌ๋ฅผ ์๋ก ์ฌ๋ผ๊ฐ๋ฉด์, ๊ฐ ๋น๋ฆฌํ ๋ ธ๋๋ ๋ ์์ ํด์์ ์ฐ๊ฒฐ(concatenation)์ ๋ํ ํด์์ ๋๋ค. ์๋ฅผ ๋ค์ด, Hash(๋ฐ์ดํฐ A)์ Hash(๋ฐ์ดํฐ B) ์์ ์๋ ๋ ธ๋๋ Hash(Hash(๋ฐ์ดํฐ A) + Hash(๋ฐ์ดํฐ B))๊ฐ ๋ฉ๋๋ค. ์ด ๊ณผ์ ์ ๊ณ์ธต๋ณ๋ก ๊ณ์๋ฉ๋๋ค.
- ๋จธํด ๋ฃจํธ (๋ฃจํธ ํด์): ์ ์ฒด ํธ๋ฆฌ์ ๋จ์ผํ ์ต์์ ํด์์ ๋๋ค. ์ด๋ ํธ๋ฆฌ ๋ด์ ๋ชจ๋ ๋ฐ์ดํฐ ๋ธ๋ก์ ๋ํ ๊ถ๊ทน์ ์ธ ์ํธํ ์์ฝ์ ๋๋ค. ์ ์ฒด ๋ฐ์ดํฐ ์ธํธ์ ๋ฌด๊ฒฐ์ฑ์ ์บก์ํํฉ๋๋ค.
๋จธํด ํธ๋ฆฌ ๊ตฌ์ฑ ๋ฐฉ๋ฒ: ๋จ๊ณ๋ณ ์ค๋ช
๊ฐ๋จํ ์์๋ฅผ ํตํด ๊ตฌ์ฑ์ ์ดํด๋ณด๊ฒ ์ต๋๋ค:
๋ค ๊ฐ์ ๋ฐ์ดํฐ ๋ธ๋ก์ธ Block 0, Block 1, Block 2, Block 3๊ฐ ์๋ค๊ณ ๊ฐ์ ํด ๋ณด๊ฒ ์ต๋๋ค. ์ด๋ค์ ๋ธ๋ก์ฒด์ธ ๋ด์ ๋ค ๊ฐ์ง ๊ธ์ต ๊ฑฐ๋ ๋๋ ๋์ฉ๋ ํ์ผ์ ๋ค ๊ฐ์ง ์ธ๊ทธ๋จผํธ๋ฅผ ๋ํ๋ผ ์ ์์ต๋๋ค.
-
1๋จ๊ณ: ๋ฐ์ดํฐ ๋ธ๋ก ํด์ฑ (๋ฆฌํ ๋
ธ๋).
H0 = Hash(Block 0)H1 = Hash(Block 1)H2 = Hash(Block 2)H3 = Hash(Block 3)
์ด๊ฒ์ด ์ฐ๋ฆฌ์ ๋ฆฌํ ๋ ธ๋์ ๋๋ค. SHA-256๊ณผ ๊ฐ์ ์ผ๋ฐ์ ์ธ ์ํธํ ํด์ ํจ์๊ฐ ์ผ๋ฐ์ ์ผ๋ก ์ฌ์ฉ๋ฉ๋๋ค.
-
2๋จ๊ณ: ์ธ์ ํ ๋ฆฌํ ๋
ธ๋ ๊ฒฐํฉ ๋ฐ ํด์ฑ.
๋ฆฌํ ํด์๋ค์ ์ง์ง์ด ์ฐ๊ฒฐํ๊ณ ํด์ํฉ๋๋ค:
H01 = Hash(H0 + H1)H23 = Hash(H2 + H3)
์ด๊ฒ์ด ํธ๋ฆฌ์์ ๋ค์ ์์ ๋ ๋ฒจ์ ํ์ฑํฉ๋๋ค.
-
3๋จ๊ณ: ์ค๊ฐ ํด์ ๊ฒฐํฉ ๋ฐ ํด์ฑ.
๋ง์ง๋ง์ผ๋ก, 2๋จ๊ณ์ ํด์๋ค์ ๊ฒฐํฉํฉ๋๋ค:
Root = Hash(H01 + H23)
์ด
Root๊ฐ ์ฐ๋ฆฌ์ ๋จธํด ๋ฃจํธ์ ๋๋ค. ์ด๋ ๋ค ๊ฐ์ ์ ์ฒด ๋ฐ์ดํฐ ๋ธ๋ก ์ธํธ๋ฅผ ๋ํ๋ด๋ ๋จ์ผ ํด์์ ๋๋ค.
๋ฐ์ดํฐ ๋ธ๋ก์ ์๊ฐ ํ์์ธ ๊ฒฝ์ฐ๋ ์ด๋จ๊น์? ์ผ๋ฐ์ ์ผ๋ก ๋ง์ง๋ง ํด์๋ฅผ ๋ณต์ ํ์ฌ ์ง์ ๊ฐ๋ฅผ ๋ง๋ค์ด ํ์ด๋งํฉ๋๋ค. ์๋ฅผ ๋ค์ด, Block 0, Block 1, Block 2๋ง ์๋ ๊ฒฝ์ฐ ํธ๋ฆฌ ๊ตฌ์ฑ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค:
H0 = Hash(Block 0)H1 = Hash(Block 1)H2 = Hash(Block 2)H2' = Hash(Block 2)(๋ณต์ )H01 = Hash(H0 + H1)H22' = Hash(H2 + H2')Root = Hash(H01 + H22')
์ด ๊ฐ๋จํ๊ณ ์ฐ์ํ ๊ตฌ์กฐ๋ ๊ฐ๋ ฅํ ๋ฐ์ดํฐ ๊ฒ์ฆ ๋ฉ์ปค๋์ฆ์ ๊ธฐ๋ฐ์ ์ ๊ณตํฉ๋๋ค.
๋จธํด ํธ๋ฆฌ์ ํ: ์ฃผ์ ์ด์
๋จธํด ํธ๋ฆฌ๋ ์์ ํ๊ณ ํจ์จ์ ์ธ ๋ฐ์ดํฐ ์ฒ๋ฆฌ์ ํ์์ ์ธ ์ฌ๋ฌ ๊ฐ์ง ๊ฐ๋ ฅํ ์ฅ์ ์ ์ ๊ณตํฉ๋๋ค:
-
ํ์ํ ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ ๊ฒ์ฆ:
์ด๊ฒ์ด ๊ฐ์ฅ ํฐ ์ด์ ์ ๋๋ค. ๋จธํด ๋ฃจํธ๋ง ์์ผ๋ฉด, ๋น์ฌ์๋ ๊ธฐ๋ณธ ๋ฐ์ดํฐ์ ์ด๋ค ๋ถ๋ถ์ด ๋ณ๊ฒฝ๋์๋์ง ์ ์ํ๊ฒ ํ์ธํ ์ ์์ต๋๋ค.
Block 0์์ ๋จ์ผ ๋ฐ์ดํธ๋ผ๋ ๋ณ๊ฒฝ๋๋ฉดH0๊ฐ ๋ณ๊ฒฝ๋๊ณ , ์ด๋ ๋ค์H01์ ๋ณ๊ฒฝํ๋ฉฐ, ๊ฒฐ๊ณผ์ ์ผ๋กRoot๋ ๋ณ๊ฒฝ๋ฉ๋๋ค. ์ด๋ฌํ ์ฐ์์ ์ธ ๋ณ๊ฒฝ์ ์ด๋ค ๋ณ์กฐ๋ ์ฆ์ ๊ฐ์งํ ์ ์๊ฒ ํฉ๋๋ค. ์ด๋ ๋์งํธ ๊ณ์ฝ์ด๋ ๋ฏผ๊ฐํ ์ ๋ณด์ ์ฅ๊ธฐ ๋ณด๊ด๊ณผ ๊ฐ์ด ๋ฐ์ดํฐ์ ๋ํ ์ ๋ขฐ๊ฐ ๊ฐ์ฅ ์ค์ํ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋งค์ฐ ์ค์ํฉ๋๋ค. -
๋ฐ์ด๋ ํจ์จ์ฑ (๋จธํด ์ฆ๋ช
):
์๋ฐฑ๋ง ๊ฐ์ ๋ธ๋ก์ ํฌํจํ๋ ๋ฐ์ดํฐ ์ธํธ ๋ด์์
Block 0์ ์กด์ฌ์ ๋ฌด๊ฒฐ์ฑ์ ์ฆ๋ช ํ๊ณ ์ถ๋ค๊ณ ์์ํด ๋ณด์ธ์. ๋จธํด ํธ๋ฆฌ๊ฐ ์๋ค๋ฉด, ์ผ๋ฐ์ ์ผ๋ก ์๋ฐฑ๋ง ๊ฐ์ ๋ธ๋ก์ ๋ชจ๋ ํด์ํ๊ฑฐ๋ ์ ์ฒด ๋ฐ์ดํฐ ์ธํธ๋ฅผ ์ ์กํด์ผ ํ ๊ฒ์ ๋๋ค. ๋จธํด ํธ๋ฆฌ๋ฅผ ์ฌ์ฉํ๋ฉดBlock 0, ๊ทธ ํด์H0, ๊ทธ๋ฆฌ๊ณ ์์์ ์ค๊ฐ ํด์(๊ทธ๊ฒ์ 'ํ์ ' ํด์)๋ง ์์ผ๋ฉด ๋จธํด ๋ฃจํธ๊น์ง์ ๊ฒฝ๋ก๋ฅผ ์ฌ๊ตฌ์ฑํ ์ ์์ต๋๋ค. ์ด ์์ ์ค๊ฐ ํด์ ์งํฉ์ ๋จธํด ์ฆ๋ช ๋๋ ํฌํจ ์ฆ๋ช ์ด๋ผ๊ณ ํฉ๋๋ค.๊ฒ์ฆ์ ํ์ํ ๋ฐ์ดํฐ ์์ ๋ฐ์ดํฐ ๋ธ๋ก ์์ ๋ฐ๋ผ ๋ก๊ทธ์ ์ผ๋ก ์ฆ๊ฐํฉ๋๋ค(
log2(N)). ๋ฐฑ๋ง ๊ฐ์ ๋ธ๋ก์ ๊ฒฝ์ฐ, ๋ฐฑ๋ง ๊ฐ ๋์ ์ฝ 20๊ฐ์ ํด์๋ง ์์ผ๋ฉด ๊ฒ์ฆ์ด ๊ฐ๋ฅํฉ๋๋ค. ์ด๋ฌํ ํจ์จ์ฑ์ ๋์ญํญ์ด ์ ํ๋ ํ๊ฒฝ, ๋ชจ๋ฐ์ผ ์ฅ์น ๋๋ ๋ถ์ฐ ๋คํธ์ํฌ์ ๋งค์ฐ ์ค์ํฉ๋๋ค. -
ํฅ์๋ ๋ณด์:
๋จธํด ํธ๋ฆฌ๋ ๊ฐ๋ ฅํ ์ํธํ ํด์ ํจ์๋ฅผ ํ์ฉํ์ฌ ๋ค์ํ ํํ์ ๊ณต๊ฒฉ์ ๋งค์ฐ ๊ฐ๋ ฅํฉ๋๋ค. ํด์ ํจ์์ ๋จ๋ฐฉํฅ ํน์ฑ์ ํด์๋ก๋ถํฐ ๋ฐ์ดํฐ๋ฅผ ์ญ์์ง๋์ด๋งํ๊ฑฐ๋ ๋์ผํ ํด์๋ฅผ ์์ฑํ๋ ๋ ๊ฐ์ ๋ค๋ฅธ ๋ฐ์ดํฐ ๋ธ๋ก(์ถฉ๋)์ ์ฐพ๋ ๊ฒ์ด ๊ณ์ฐ์ ์ผ๋ก ๋ถ๊ฐ๋ฅํ๋๋ก ๋ณด์ฅํฉ๋๋ค. ์ด๋ฌํ ์ํธํ ๊ฐ๋๋ ๋จธํด ํธ๋ฆฌ์ ๋ณด์ ๋ณด์ฅ์ ์ด์์ ํ์ฑํฉ๋๋ค.
-
๋๊ท๋ชจ ๋ฐ์ดํฐ ์ธํธ ํ์ฅ์ฑ:
์๋ฐฑ ๊ฐ๋ ์์ญ์ต ๊ฐ๋ ๋ฐ์ดํฐ ๋ธ๋ก์ ๋ค๋ฃจ๋ , ๋จธํด ํธ๋ฆฌ ์ํคํ ์ฒ๋ ํจ๊ณผ์ ์ผ๋ก ํ์ฅ๋ฉ๋๋ค. ๊ฒ์ฆ์์ ๊ด์ ์์ ๊ฒ์ฆ ์๊ฐ์ ์ ์ฒด ๋ฐ์ดํฐ ์ธํธ ํฌ๊ธฐ์ ๊ด๊ณ์์ด ์ฌ์ค์ ์ผ์ ํ๊ฒ ์ ์ง๋๋ฏ๋ก, ๋ถ์ฐ ์์ฅ ๊ธฐ์ ๊ณผ ๊ฐ์ ๊ธ๋ก๋ฒ ๊ท๋ชจ์ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ ํฉํฉ๋๋ค.
๋จธํด ์ฆ๋ช : ์ต์ํ์ ์ ๋ณด๋ก ๋ฐ์ดํฐ๋ฅผ ๊ฒ์ฆํ๋ ๊ธฐ์
๋จธํด ํธ๋ฆฌ์ ์ง์ ํ ํ์ ๋จธํด ์ฆ๋ช ์ ํตํด ๋น์ ๋ฐํฉ๋๋ค. ๋จธํด ์ฆ๋ช ์ ํด๋ผ์ด์ธํธ๊ฐ ํน์ ๋ฐ์ดํฐ ์กฐ๊ฐ์ด ์ค์ ๋ก ๋ ํฐ ๋ฐ์ดํฐ ์ธํธ์ ์ผ๋ถ์ด๋ฉฐ ๋ณ์กฐ๋์ง ์์์์ ์ ์ฒด ๋ฐ์ดํฐ ์ธํธ๋ฅผ ๋ค์ด๋ก๋ํ๊ฑฐ๋ ์ฒ๋ฆฌํ ํ์ ์์ด ํ์ธํ ์ ์๋๋ก ํฉ๋๋ค. ์ด๋ ๋ฐฉ๋ํ ์ฑ ์ ํ ํ์ด์ง๋ฅผ ์ ์ฒด ์ฑ ์ ์ฝ์ ํ์ ์์ด, ๊ทธ ๊ณ ์ ์๋ณ์์ ๋ช๋ช ํน์ ์ธ์ ํ์ด์ง๋ฅผ ๊ฒํ ํ๋ ๊ฒ๋ง์ผ๋ก ํ์ธํ๋ ๊ฒ๊ณผ ์ ์ฌํฉ๋๋ค.
๋จธํด ์ฆ๋ช ์ ์๋ ๋ฐฉ์
Block 0, Block 1, Block 2, Block 3, ๊ทธ๋ฆฌ๊ณ ๋จธํด ๋ฃจํธ Root = Hash(Hash(Hash(Block 0) + Hash(Block 1)) + Hash(Hash(Block 2) + Hash(Block 3))) ์์๋ก ๋์๊ฐ ๋ณด๊ฒ ์ต๋๋ค.
์ฌ์ฉ์๊ฐ Block 0์ด ๋ฐ์ดํฐ ์ธํธ์ ์ค์ ๋ก ํฌํจ๋์ด ์์ผ๋ฉฐ, ๋ฐ์ดํฐ ์ธํธ์ ๋จธํด ๋ฃจํธ๊ฐ ์ค์ ๋ก Root์์ ๊ฒ์ฆํ๊ณ ์ถ๋ค๊ณ ๊ฐ์ ํด ๋ณด๊ฒ ์ต๋๋ค.
Block 0์ ๋ํ ๋จธํด ์ฆ๋ช
์ ๊ตฌ์ฑํ๋ ค๋ฉด ๋ค์์ด ํ์ํฉ๋๋ค:
- ์๋ณธ
Block 0์์ฒด. - ๋ฃจํธ๊น์ง์ ๊ฒฝ๋ก์ ์๋ ํ์ ๋
ธ๋๋ค์ ํด์. ์ด ๊ฒฝ์ฐ,
H1(Block 1์ ํด์)๊ณผH23(H2์H3์ ํด์)์ด ๋ฉ๋๋ค. - ์ ์ฒด ๋ฐ์ดํฐ ์ธํธ์ ์๋ ค์ง ๋จธํด ๋ฃจํธ (
Root).
๊ฒ์ฆ ๊ณผ์ ์ ๋ค์๊ณผ ๊ฐ์ด ์งํ๋ฉ๋๋ค:
- ๊ฒ์ฆ์๋
Block 0,H1,H23, ๊ทธ๋ฆฌ๊ณ ์์๋๋Root๋ฅผ ๋ฐ์ต๋๋ค. - ๊ทธ๋ค์
H0 = Hash(Block 0)๋ฅผ ๊ณ์ฐํฉ๋๋ค. - ๊ทธ๋ฐ ๋ค์
H0๋ฅผ ํ์ ๋ ธ๋H1๊ณผ ๊ฒฐํฉํ์ฌ ๋ค์ ๋ ๋ฒจ ํด์์ธComputed_H01 = Hash(H0 + H1)๋ฅผ ๊ณ์ฐํฉ๋๋ค. - ์ด์ด์
Computed_H01๋ฅผ ํ์ ๋ ธ๋H23๊ณผ ๊ฒฐํฉํ์ฌ ๋จธํด ๋ฃจํธ์ธComputed_Root = Hash(Computed_H01 + H23)๋ฅผ ๊ณ์ฐํฉ๋๋ค. - ๋ง์ง๋ง์ผ๋ก,
Computed_Root๋ฅผ ์์๋๋Root์ ๋น๊ตํฉ๋๋ค. ์ผ์นํ๋ฉดBlock 0์ ์ง์์ ํฌํจ ์ฌ๋ถ๊ฐ ์ํธํ์ ์ผ๋ก ๊ฒ์ฆ๋ฉ๋๋ค.
์ด ๊ณผ์ ์ ๋จ์ผ ๋ฐ์ดํฐ ์์์ ๋ฌด๊ฒฐ์ฑ์ ๊ฒ์ฆํ๋ ๋ฐ ์ ์ฒด ํด์ ์ค ๊ทนํ ์ผ๋ถ๋ง ํ์ํ ๋ฐฉ๋ฒ์ ๋ณด์ฌ์ค๋๋ค. '๊ฐ์ฌ ๊ฒฝ๋ก'(์ด ๊ฒฝ์ฐ H1๊ณผ H23)๊ฐ ๊ฒ์ฆ ๊ณผ์ ์ ์์ชฝ์ผ๋ก ์๋ดํฉ๋๋ค.
๋จธํด ์ฆ๋ช ์ ์ด์
- ๊ฒฝ๋ ํด๋ผ์ด์ธํธ ๊ฒ์ฆ: ๋ชจ๋ฐ์ผ ํฐ์ด๋ IoT ์ฅ์น์ ๊ฐ์ด ์ปดํจํ ์์์ด๋ ๋์ญํญ์ด ์ ํ๋ ์ฅ์น์ ๋งค์ฐ ์ค์ํฉ๋๋ค. ์ด๋ค์ ์ ์ฒด ์ฒด์ธ์ ๋๊ธฐํํ์ง ์๊ณ ๋ ๊ฑฐ๋ํ ๋ธ๋ก์ฒด์ธ์์ ํธ๋์ญ์ ์ ๊ฒ์ฆํ ์ ์์ต๋๋ค.
- ํฌํจ/๋ถํฌํจ ์ฆ๋ช : ์ฃผ๋ก ํฌํจ์ ์ํด ์ฌ์ฉ๋์ง๋ง, ๋ ๊ณ ๊ธ ๋จธํด ํธ๋ฆฌ ๋ณํ(์: ํฌ์ ๋จธํด ํธ๋ฆฌ)์ ํน์ ๋ฐ์ดํฐ ์์์ ๋ถ์ฌ๋ฅผ ํจ์จ์ ์ผ๋ก ์ฆ๋ช ํ ์๋ ์์ต๋๋ค.
- ๋ถ์ฐ๋ ์ ๋ขฐ: ๋ถ์ฐ ๋คํธ์ํฌ์์ ์ฐธ์ฌ์๋ค์ ์ค์ ๊ธฐ๊ด์ ์์กดํ์ง ์๊ณ ๋ฐ์ดํฐ์ ์ง์ ์ฑ์ ๊ฒ์ฆํ ์ ์์ต๋๋ค.
์ ์ธ๊ณ ๋จธํด ํธ๋ฆฌ์ ์ค์ ์ ์ฉ ์ฌ๋ก
๋จธํด ํธ๋ฆฌ๋ ์ถ์์ ์ธ ์ด๋ก ์ ๊ตฌ์ฑ๋ฌผ์ด ์๋๋๋ค. ์ฐ๋ฆฌ๋ ์ข ์ข ๊นจ๋ซ์ง ๋ชปํ์ง๋ง, ์ผ์์ ์ผ๋ก ์ฌ์ฉํ๋ ๋ง์ ๊ธฐ์ ์ ๊ทผ๊ฐ์ ์ด๋ฃน๋๋ค. ์ ์ธ๊ณ์ ๋ฏธ์น๋ ๊ทธ ์ํฅ์ ์์ฒญ๋ฉ๋๋ค:
1. ๋ธ๋ก์ฒด์ธ ๋ฐ ์ํธํํ (๋นํธ์ฝ์ธ, ์ด๋๋ฆฌ์ ๋ฑ)
์ด๊ฒ์ ์๋ง๋ ๊ฐ์ฅ ์ ๋ช ํ ์ ์ฉ ์ฌ๋ก์ผ ๊ฒ์ ๋๋ค. ๋ธ๋ก์ฒด์ธ์ ๋ชจ๋ ๋ธ๋ก์ ํด๋น ๋ธ๋ก ๋ด์ ๋ชจ๋ ํธ๋์ญ์ ์ ์์ฝํ๋ ๋จธํด ํธ๋ฆฌ๋ฅผ ํฌํจํฉ๋๋ค. ์ด ํธ๋์ญ์ ์ ๋จธํด ๋ฃจํธ๋ ๋ธ๋ก ํค๋์ ์ ์ฅ๋ฉ๋๋ค. ์ด๋ ์ฌ๋ฌ ๊ฐ์ง ์ด์ ๋ก ์ค์ํฉ๋๋ค:
- ํธ๋์ญ์ ๊ฒ์ฆ: ๊ฒฝ๋ ํด๋ผ์ด์ธํธ(์: ๋ชจ๋ฐ์ผ ์ง๊ฐ)๋ ์ ์ฒด ๋ธ๋ก์ ํธ๋์ญ์ ๊ธฐ๋ก ๋์ ๋ธ๋ก ํค๋(๋จธํด ๋ฃจํธ ํฌํจ)์ ์์ ์ ํธ๋์ญ์ ์ ๋ํ ๋จธํด ์ฆ๋ช ๋ง ๋ค์ด๋ก๋ํ์ฌ ํน์ ํธ๋์ญ์ ์ด ๋ธ๋ก์ ํฌํจ๋์๋์ง, ๊ทธ๋ฆฌ๊ณ ์ ํจํ์ง ํ์ธํ ์ ์์ต๋๋ค. ์ด๋ ์ ์ธ๊ณ์ ์ผ๋ก ๋น ๋ฅด๊ณ ์ ์ ์์์ผ๋ก ๊ฒ์ฆ์ด ๊ฐ๋ฅํ๊ฒ ํฉ๋๋ค.
- ๋ธ๋ก ๋ฌด๊ฒฐ์ฑ: ๋ธ๋ก ๋ด์ ๋จ์ผ ํธ๋์ญ์ ์ ๋ํ ์ด๋ค ๋ณ๊ฒฝ์ด๋ผ๋ ํด๋น ํด์๋ฅผ ๋ณ๊ฒฝํ๊ณ , ๋จธํด ํธ๋ฆฌ๋ฅผ ๋ฐ๋ผ ์ ํ๋์ด ๋ค๋ฅธ ๋จธํด ๋ฃจํธ๋ฅผ ์์ฑํฉ๋๋ค. ์ด๋ฌํ ๋ถ์ผ์น๋ ๋ธ๋ก์ ๋ฌดํจํํ์ฌ ๋ณ์กฐ๋ฅผ ์ฆ์ ๊ฐ์งํ ์ ์๊ฒ ํ๊ณ ์ฌ๊ธฐ์ฑ ํธ๋์ญ์ ์ด ๋คํธ์ํฌ์ ์ํด ์๋ฝ๋๋ ๊ฒ์ ๋ฐฉ์งํฉ๋๋ค.
- ์ด๋๋ฆฌ์์ ๊ณ ๊ธ ํ์ฉ: ์ด๋๋ฆฌ์์ ๋ธ๋ก๋น ํ๋๊ฐ ์๋๋ผ ์ธ ๊ฐ์ ๋จธํด ํจํธ๋ฆฌ์ค ํธ๋ฆฌ(๋ ๋ณต์กํ ๋ณํ)๋ฅผ ์ฌ์ฉํฉ๋๋ค: ํ๋๋ ํธ๋์ญ์ ์ฉ, ํ๋๋ ํธ๋์ญ์ ์์์ฆ์ฉ, ๊ทธ๋ฆฌ๊ณ ํ๋๋ ์ธ๊ณ ์ํ์ฉ์ ๋๋ค. ์ด๋ฅผ ํตํด ๋คํธ์ํฌ์ ์ ์ฒด ์ํ์ ๋ํด ๋งค์ฐ ํจ์จ์ ์ด๊ณ ๊ฒ์ฆ ๊ฐ๋ฅํ ์ก์ธ์ค๋ฅผ ํ์ฉํฉ๋๋ค.
2. ๋ถ์ฐ ์คํ ๋ฆฌ์ง ์์คํ (IPFS, Git)
๋จธํด ํธ๋ฆฌ๋ ๋ถ์ฐ ํ์ผ ์์คํ ์์ ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ ๋ฐ ํจ์จ์ ์ธ ๋๊ธฐํ๋ฅผ ๋ณด์ฅํ๋ ๋ฐ ํ์์ ์ ๋๋ค:
- ํ์ฑ๊ฐ ํ์ผ ์์คํ (IPFS): ๊ธ๋ก๋ฒ P2P ํ์ดํผ๋ฏธ๋์ด ํ๋กํ ์ฝ์ธ IPFS๋ ๋จธํด ํธ๋ฆฌ๋ฅผ ๊ด๋ฒ์ํ๊ฒ ์ฌ์ฉํฉ๋๋ค. IPFS์ ํ์ผ์ ๋ ์์ ๋ธ๋ก์ผ๋ก ๋๋๋ฉฐ, ์ด ๋ธ๋ก๋ค๋ก๋ถํฐ ๋จธํด DAG(๋ฐฉํฅ์ฑ ๋น์ํ ๊ทธ๋ํ, ์ผ๋ฐํ๋ ๋จธํด ํธ๋ฆฌ)๊ฐ ํ์ฑ๋ฉ๋๋ค. ์ด DAG์ ๋ฃจํธ ํด์๋ ์ ์ฒด ํ์ผ์ ์ฝํ ์ธ ์๋ณ์(CID) ์ญํ ์ ํฉ๋๋ค. ์ด๋ฅผ ํตํด ์ฌ์ฉ์๋ ์ฌ๋ฌ ์์ค์์ ํ์ผ ์ธ๊ทธ๋จผํธ๋ฅผ ๋ค์ด๋ก๋ํ๊ณ ๊ฒ์ฆํ ์ ์์ผ๋ฉฐ, ์ต์ข ์ฌ๊ตฌ์ฑ๋ ํ์ผ์ด ์๋ณธ๊ณผ ๋์ผํ๊ณ ์์๋๊ฑฐ๋ ๋ณ๊ฒฝ๋์ง ์์์์ ๋ณด์ฅํฉ๋๋ค. ์ด๋ ๊ธ๋ก๋ฒ ์ฝํ ์ธ ์ ์ก ๋ฐ ์์นด์ด๋น์ ์ด์์ ๋๋ค.
- Git ๋ฒ์ ๊ด๋ฆฌ ์์คํ : ์ ์ธ๊ณ ์๋ฐฑ๋ง ๊ฐ๋ฐ์๊ฐ ์ฌ์ฉํ๋ Git์ ํ์ผ ๋ณ๊ฒฝ ์ฌํญ์ ์ถ์ ํ๊ธฐ ์ํด ๋จธํด๊ณผ ์ ์ฌํ ํธ๋ฆฌ(ํนํ, ๋จธํด DAG์ ํ ์ ํ)๋ฅผ ์ฌ์ฉํฉ๋๋ค. Git์ ๋ชจ๋ ์ปค๋ฐ์ ๋ณธ์ง์ ์ผ๋ก ํด๋น ๋ด์ฉ(์ด์ ์ปค๋ฐ ๋ฐ ํ์ผ/๋๋ ํ ๋ฆฌ ํธ๋ฆฌ์ ๋ํ ์ฐธ์กฐ ํฌํจ)์ ํด์์ ๋๋ค. ์ด๋ ๋ณ๊ฒฝ ๊ธฐ๋ก์ด ๋ถ๋ณํ๋ฉฐ ๊ฒ์ฆ ๊ฐ๋ฅํจ์ ๋ณด์ฅํฉ๋๋ค. ์ด์ ์ปค๋ฐ์ ๋ํ ์ด๋ค ๋ณ๊ฒฝ์ด๋ผ๋ ํด๋น ํด์๋ฅผ ๋ณ๊ฒฝํ๊ณ , ๋ฐ๋ผ์ ํ์ ์ปค๋ฐ์ ํด์๋ ๋ณ๊ฒฝํ์ฌ ๋ณ์กฐ๋ฅผ ์ฆ์ ๋๋ฌ๋ ๋๋ค.
3. ๋ฐ์ดํฐ ๋๊ธฐํ ๋ฐ ๊ฒ์ฆ
๋๊ท๋ชจ ๋ฐ์ดํฐ ์์คํ , ํนํ ์๋ก ๋ค๋ฅธ ์ง๋ฆฌ์ ์ง์ญ์ ๋ถ์ฐ๋ ์์คํ ์์ ๋จธํด ํธ๋ฆฌ๋ ํจ์จ์ ์ธ ๋๊ธฐํ ๋ฐ ์ผ๊ด์ฑ ๊ฒ์ฌ๋ฅผ ์ฉ์ดํ๊ฒ ํฉ๋๋ค:
- NoSQL ๋ฐ์ดํฐ๋ฒ ์ด์ค: Amazon DynamoDB ๋๋ Apache Cassandra์ ๊ฐ์ ์์คํ ์ ๋จธํด ํธ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ ๋ฐ์ดํฐ ๋ณต์ ๋ณธ ๊ฐ์ ๋ถ์ผ์น๋ฅผ ๊ฐ์งํฉ๋๋ค. ์ ์ฒด ๋ฐ์ดํฐ ์ธํธ๋ฅผ ๋น๊ตํ๋ ๋์ , ๋ณต์ ๋ณธ์ ๋จธํด ๋ฃจํธ๋ฅผ ๋น๊ตํ ์ ์์ต๋๋ค. ๋ฃจํธ๊ฐ ๋ค๋ฅด๋ฉด ํธ๋ฆฌ์ ํน์ ๋ถ๊ธฐ๋ฅผ ๋น๊ตํ์ฌ ์ด๋ค ๋ฐ์ดํฐ ์ธ๊ทธ๋จผํธ๊ฐ ๋๊ธฐํ๋์ง ์์๋์ง ์ ํํ ์ ์ํ๊ฒ ํ์ ํ์ฌ ๋ ํจ์จ์ ์ธ ์กฐ์ ์ผ๋ก ์ด์ด์ง๋๋ค. ์ด๋ ์ ์ธ๊ณ ๋ฐ์ดํฐ ์ผํฐ์ ๊ฑธ์ณ ์ผ๊ด๋ ๋ฐ์ดํฐ๋ฅผ ์ ์งํ๋ ๋ฐ ํ์์ ์ ๋๋ค.
- ํด๋ผ์ฐ๋ ์คํ ๋ฆฌ์ง: ํด๋ผ์ฐ๋ ์ ๊ณต์ ์ฒด๋ ์ข ์ข ๋จธํด ํธ๋ฆฌ ๋๋ ์ ์ฌํ ๊ตฌ์กฐ๋ฅผ ์ฌ์ฉํ์ฌ ์๋ง์ ์๋ฒ์ ์ ์ฅ๋ ์ฌ์ฉ์ ๋ฐ์ดํฐ์ ๋ฌด๊ฒฐ์ฑ์ ๋ณด์ฅํฉ๋๋ค. ์ด๋ค์ ์ ๋ก๋๋ ํ์ผ์ด ์์๋์ง ์๊ณ ์ ์ฅ ๋๋ ๊ฒ์ ์ค์ ์์๋์ง ์์์์ ํ์ธํ ์ ์์ต๋๋ค.
4. P2P (Peer-to-Peer) ๋คํธ์ํฌ (๋นํธํ ๋ ํธ)
๋๋ฆฌ ์ฌ์ฉ๋๋ P2P ํ์ผ ๊ณต์ ํ๋กํ ์ฝ์ธ ๋นํธํ ๋ ํธ๋ ๋ค์ด๋ก๋๋ ํ์ผ์ ๋ฌด๊ฒฐ์ฑ์ ๋ณด์ฅํ๊ธฐ ์ํด ๋จธํด ํธ๋ฆฌ๋ฅผ ์ฌ์ฉํฉ๋๋ค:
- ๋นํธํ ๋ ํธ๋ฅผ ํตํด ํ์ผ์ ๋ค์ด๋ก๋ํ ๋, ํ์ผ์ ์ฌ๋ฌ ์์ ์กฐ๊ฐ์ผ๋ก ๋๋ฉ๋๋ค. 'ํ ๋ ํธ' ํ์ผ ๋๋ ๋ง๊ทธ๋ท ๋งํฌ์๋ ์ด ๋ชจ๋ ์กฐ๊ฐ์ ๋จธํด ๋ฃจํธ(๋๋ ๋จธํด ํธ๋ฆฌ๋ฅผ ๊ตฌ์ฑํ ์ ์๋ ํด์ ๋ชฉ๋ก)๊ฐ ํฌํจ๋์ด ์์ต๋๋ค. ์ฌ๋ฌ ํผ์ด๋ก๋ถํฐ ์กฐ๊ฐ์ ๋ค์ด๋ก๋ํ ๋, ๊ฐ ์กฐ๊ฐ์ ํด์ํ๊ณ ์์๋๋ ํด์์ ๋น๊ตํฉ๋๋ค. ์ด๋ฅผ ํตํด ์ ํจํ๊ณ ๋ณ์กฐ๋์ง ์์ ๋ฐ์ดํฐ๋ง ์๋ฝํ๊ณ , ์ ์์ ์ด๊ฑฐ๋ ์์๋ ์กฐ๊ฐ์ ๋ชจ๋ ๊ฑฐ๋ถ๋ฉ๋๋ค. ์ด ์์คํ ์ ์ ๋ขฐํ ์ ์๋ ์์ค๋ก๋ถํฐ๋ ์ ๋ขฐํ ์ ์๋ ํ์ผ ์ ์ก์ ๊ฐ๋ฅํ๊ฒ ํ๋ฉฐ, ์ด๋ ๊ธ๋ก๋ฒ P2P ๋คํธ์ํฌ์์ ํํ ๋ฐ์ํ๋ ์๋๋ฆฌ์ค์ ๋๋ค.
5. ์ธ์ฆ์ ํฌ๋ช ์ฑ ๋ก๊ทธ
๋จธํด ํธ๋ฆฌ๋ ๋ํ SSL/TLS ์ธ์ฆ์ ๋ฐ๊ธ์ ๊ณต๊ฐ์ ์ผ๋ก ๊ฐ์ฌํ ์ ์๋๋ก ํ๋ ์ธ์ฆ์ ํฌ๋ช ์ฑ(CT) ๋ก๊ทธ์๋ ํ์์ ์ ๋๋ค:
- CT ๋ก๊ทธ๋ ์ธ์ฆ ๊ธฐ๊ด(CA)์์ ๋ฐ๊ธํ ๋ชจ๋ SSL/TLS ์ธ์ฆ์์ ์ถ๊ฐ ์ ์ฉ ๋ก๊ทธ์ ๋๋ค. ์ด๋ฌํ ๋ก๊ทธ๋ ๋จธํด ํธ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ ๊ตฌํ๋ฉ๋๋ค. ๋ธ๋ผ์ฐ์ ๊ณต๊ธ์ ์ฒด์ ๋๋ฉ์ธ ์์ ์๋ ์ด๋ฌํ ๋ก๊ทธ๋ฅผ ์ฃผ๊ธฐ์ ์ผ๋ก ํ์ธํ์ฌ ์์ ์ ๋๋ฉ์ธ์ ๋ํด ์น์ธ๋์ง ์๊ฑฐ๋ ์๋ชป๋ ์ธ์ฆ์๊ฐ ๋ฐ๊ธ๋์ง ์์๋์ง ํ์ธํ ์ ์์ต๋๋ค. ๋ก๊ทธ์ ๋จธํด ๋ฃจํธ๋ ์ ๊ธฐ์ ์ผ๋ก ๊ฒ์๋์ด ๋๊ตฌ๋ ์ ์ฒด ๋ก๊ทธ์ ๋ฌด๊ฒฐ์ฑ๊ณผ ์ผ๊ด์ฑ์ ํ์ธํ๊ณ ์ฌ๊ธฐ์ฑ ์ธ์ฆ์๋ฅผ ์๋ฐํ๊ฒ ๋ฐ๊ธํ๋ ค๋ ์๋๋ฅผ ๊ฐ์งํ ์ ์๋๋ก ํฉ๋๋ค. ์ด๋ ์ ์ธ๊ณ ์น ๋ณด์ ์ธํ๋ผ์ ๋ํ ์ ๋ขฐ๋ฅผ ํฅ์์ํต๋๋ค.
๊ณ ๊ธ ๊ฐ๋ ๋ฐ ๋ณํ
๊ธฐ๋ณธ ๋จธํด ํธ๋ฆฌ ๊ตฌ์กฐ๋ ๊ฐ๋ ฅํ์ง๋ง, ํน์ ๊ณผ์ ๋ฅผ ํด๊ฒฐํ๊ณ ๋ค์ํ ์ฌ์ฉ ์ฌ๋ก์ ๋ํ ์ฑ๋ฅ์ ์ต์ ํํ๊ธฐ ์ํด ๋ค์ํ ๋ณํ์ด ๊ฐ๋ฐ๋์์ต๋๋ค:
๋จธํด ํจํธ๋ฆฌ์ค ํธ๋ฆฌ (MPT)
์ด๋๋ฆฌ์์์ ๊ด๋ฒ์ํ๊ฒ ์ฌ์ฉ๋๋ ์ ๊ตํ ๋ณํ์ธ ๋จธํด ํจํธ๋ฆฌ์ค ํธ๋ฆฌ(์ผ๋ช 'ํจํธ๋ฆฌ์ค ํธ๋ผ์ด' ๋๋ ๋จธํด ํด์ฑ๊ณผ ๊ฒฐํฉ๋ '๋ผ๋์ค ํธ๋ฆฌ')๋ ํค-๊ฐ ์์ ํจ์จ์ ์ผ๋ก ์ ์ฅํ๋ ์ธ์ฆ๋ ๋ฐ์ดํฐ ๊ตฌ์กฐ์ ๋๋ค. ์ด๋ ์ฃผ์ด์ง ํค-๊ฐ ์์ ๋ํ ์ํธํ ํฌํจ ์ฆ๋ช ๊ณผ ๋ถ์ฌ ์ฆ๋ช (ํค๊ฐ ์กด์ฌํ์ง ์์)์ ์ ๊ณตํฉ๋๋ค. MPT๋ ์ด๋๋ฆฌ์์์ ๋ค์๊ณผ ๊ฐ์ ์ฉ๋๋ก ์ฌ์ฉ๋ฉ๋๋ค:
- ์ํ ํธ๋ฆฌ: ๋ชจ๋ ๊ณ์ ์ ์ ์ฒด ์ํ(์์ก, ๋ ผ์ค, ์ ์ฅ ํด์, ์ฝ๋ ํด์)๋ฅผ ์ ์ฅํฉ๋๋ค.
- ํธ๋์ญ์ ํธ๋ฆฌ: ๋ธ๋ก์ ๋ชจ๋ ํธ๋์ญ์ ์ ์ ์ฅํฉ๋๋ค.
- ์์์ฆ ํธ๋ฆฌ: ๋ธ๋ก์ ๋ชจ๋ ํธ๋์ญ์ ๊ฒฐ๊ณผ(์์์ฆ)๋ฅผ ์ ์ฅํฉ๋๋ค.
์ํ ํธ๋ฆฌ์ ๋จธํด ๋ฃจํธ๋ ๋ชจ๋ ๋ธ๋ก๊ณผ ํจ๊ป ๋ณ๊ฒฝ๋๋ฉฐ, ๊ทธ ์๊ฐ์ ์ ์ฒด ์ด๋๋ฆฌ์ ๋ธ๋ก์ฒด์ธ ์ํ์ ๋ํ ์ํธํ ์ค๋ ์ท ์ญํ ์ ํฉ๋๋ค. ์ด๋ฅผ ํตํด ์ ์ฒด ๋ธ๋ก์ฒด์ธ ๊ธฐ๋ก์ ์ฒ๋ฆฌํ ํ์ ์์ด ํน์ ๊ณ์ ์์ก ๋๋ ์ค๋งํธ ๊ณ์ฝ ์ ์ฅ ๊ฐ์ ๋งค์ฐ ํจ์จ์ ์ผ๋ก ๊ฒ์ฆํ ์ ์์ต๋๋ค.
ํฌ์ ๋จธํด ํธ๋ฆฌ (SMT)
ํฌ์ ๋จธํด ํธ๋ฆฌ๋ ๋ฐ์ดํฐ ์ธํธ๊ฐ ๋งค์ฐ ํฌ์ง๋ง ๊ฐ๋ฅํ ๋ฐ์ดํฐ ์์ ์ค ๊ทนํ ์ผ๋ถ๋ง ์ค์ ๋ก ์กด์ฌํ๋ ์ํฉ(์ฆ, ๋๋ถ๋ถ์ ๋ฆฌํ ๋ ธ๋๊ฐ ๋น์ด ์๊ฑฐ๋ 0์ผ ๊ฒฝ์ฐ)์ ์ต์ ํ๋์ด ์์ต๋๋ค. SMT๋ ํธ๋ฆฌ์ ๋น์ด ์์ง ์์ ๋ถ๊ธฐ๋ง ์ ์ฅํจ์ผ๋ก์จ ํจ์จ์ฑ์ ๋ฌ์ฑํ์ฌ, ์ด๋ฌํ ํฌ์ ๋ฐ์ดํฐ ์ธํธ์์ ์ฆ๋ช ์ ํ์ํ ์ ์ฅ ๊ณต๊ฐ๊ณผ ๊ณ์ฐ์ ํฌ๊ฒ ์ค์ ๋๋ค. ์ด๋ ๊ฐ๋ฅํ ์ฃผ์์ ์๊ฐ ์ค์ ๊ณ์ ์๋ฅผ ํจ์ฌ ์ด๊ณผํ๋ ๋๊ท๋ชจ ์ ์ ์์คํ ์ด๋ ๋ณต์กํ ์์ฅ ์ํ์ ๋ํ ์กด์ฌ/๋ถ์ฌ ์ฆ๋ช ์ ํนํ ์ ์ฉํฉ๋๋ค.
๋จธํด B+ ํธ๋ฆฌ
๋จธํด ํด์ฑ์ B+ ํธ๋ฆฌ(๋ฐ์ดํฐ๋ฒ ์ด์ค ์ธ๋ฑ์ฑ์ ์ํ ์ผ๋ฐ์ ์ธ ๋ฐ์ดํฐ ๊ตฌ์กฐ)์ ํตํฉํจ์ผ๋ก์จ, ๋จธํด B+ ํธ๋ฆฌ๋ ํจ์จ์ ์ธ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฟผ๋ฆฌ์ ์ํธํ์ ์ผ๋ก ๊ฒ์ฆ ๊ฐ๋ฅํ ๋ฌด๊ฒฐ์ฑ์ด๋ผ๋ ๋ ๊ฐ์ง ์ด์ ์ ๋ชจ๋ ์ ๊ณตํฉ๋๋ค. ์ด ์กฐํฉ์ ๊ฒ์ฆ ๊ฐ๋ฅํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ฐ ๊ฐ์ฌ ๋ก๊ทธ์์ ์ฃผ๋ชฉ๋ฐ๊ณ ์์ผ๋ฉฐ, ์ฟผ๋ฆฌ๊ฐ ์ฌ๋ฐ๋ฅธ ๊ฒฐ๊ณผ๋ฟ๋ง ์๋๋ผ ๊ฒฐ๊ณผ๊ฐ ๋ณ์กฐ๋์ง ์์๊ณ ํน์ ์์ ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ํ๋ฅผ ์ ํํ๊ฒ ๋ฐ์ํ๋ค๋ ๊ฒ์ฆ ๊ฐ๋ฅํ ์ฆ๋ช ๋ ๋ฐํํ๋๋ก ๋ณด์ฅํฉ๋๋ค.
๊ณผ์ ๋ฐ ๊ณ ๋ ค ์ฌํญ
๋จธํด ํธ๋ฆฌ๋ ์์ฒญ๋๊ฒ ๊ฐ๋ ฅํ์ง๋ง, ๊ณ ๋ คํด์ผ ํ ์ฌํญ์ด ์๋ ๊ฒ์ ์๋๋๋ค:
- ์ด๊ธฐ ๊ตฌ์ฑ ๋น์ฉ: ๋งค์ฐ ํฐ ๋ฐ์ดํฐ ์ธํธ์ ๋ํด ๋จธํด ํธ๋ฆฌ๋ฅผ ์ฒ์๋ถํฐ ๊ตฌ์ถํ๋ ๊ฒ์ ๋ชจ๋ ๋ฐ์ดํฐ ๋ธ๋ก์ ํด์ํ๊ณ ๋ชจ๋ ์ค๊ฐ ํด์๋ฅผ ๊ณ์ฐํด์ผ ํ๋ฏ๋ก ๊ณ์ฐ ์ง์ฝ์ ์ผ ์ ์์ต๋๋ค.
- ๋์ ๋ฐ์ดํฐ ๊ด๋ฆฌ: ๋ฐ์ดํฐ๊ฐ ์์ฃผ ์ถ๊ฐ, ์ญ์ ๋๋ ์์ ๋ ๋, ๋จธํด ํธ๋ฆฌ๋ฅผ ์ ๋ฐ์ดํธํ๋ ค๋ฉด ์ํฅ์ ๋ฐ๋ ๊ฒฝ๋ก๋ฅผ ๋ฐ๋ผ ๋ฃจํธ๊น์ง ํด์๋ฅผ ์ฌ๊ณ์ฐํด์ผ ํฉ๋๋ค. ๊ฒ์ฆ์๋ ํจ์จ์ ์ด์ง๋ง, ๋์ ์ ๋ฐ์ดํธ๋ ์ ์ ๋ฐ์ดํฐ์ ๋นํด ๋ณต์ก์ฑ์ ๋ํ ์ ์์ต๋๋ค. ์ฆ๋ถ ๋จธํด ํธ๋ฆฌ ๋๋ ๊ฐ๋ณ ๋จธํด ํธ๋ฆฌ์ ๊ฐ์ ๊ณ ๊ธ ๊ตฌ์กฐ๊ฐ ์ด๋ฅผ ํด๊ฒฐํฉ๋๋ค.
- ํด์ ํจ์ ์์กด์ฑ: ๋จธํด ํธ๋ฆฌ์ ๋ณด์์ ๊ธฐ๋ณธ ์ํธํ ํด์ ํจ์์ ๊ฐ๋์ ์ ์ ์ผ๋ก ์์กดํฉ๋๋ค. ํด์ ํจ์๊ฐ ์์๋๋ฉด(์: ์ถฉ๋์ด ๋ฐ๊ฒฌ๋๋ฉด) ๋จธํด ํธ๋ฆฌ์ ๋ฌด๊ฒฐ์ฑ ๋ณด์ฅ์ ํผ์๋ ๊ฒ์ ๋๋ค.
๋จธํด ํธ๋ฆฌ์ ํจ๊ปํ๋ ๋ฐ์ดํฐ ๊ฒ์ฆ์ ๋ฏธ๋
์ธ์์ด ์ ๋ก ์๋ ์์ ๋ฐ์ดํฐ๋ฅผ ์์ฑํจ์ ๋ฐ๋ผ ํจ์จ์ ์ด๊ณ ํ์ฅ ๊ฐ๋ฅํ๋ฉฐ ์ ๋ขฐํ ์ ์๋ ๋ฐ์ดํฐ ๊ฒ์ฆ ๋ฉ์ปค๋์ฆ์ ํ์์ฑ์ ๋์ฑ ์ปค์ง ๊ฒ์ ๋๋ค. ๋จธํด ํธ๋ฆฌ๋ ์ฐ์ํ ๋จ์์ฑ๊ณผ ๊ฒฌ๊ณ ํ ์ํธํ ์์ฑ์ ๋ฐํ์ผ๋ก ๋์งํธ ์ ๋ขฐ์ ๋ฏธ๋์ ๋์ฑ ์ค์ํ ์ญํ ์ ํ ์ค๋น๊ฐ ๋์ด ์์ต๋๋ค. ๋ค์ ๋ถ์ผ์์ ๋จธํด ํธ๋ฆฌ์ ํ๋๋ ์ฌ์ฉ์ ์์ํ ์ ์์ต๋๋ค:
- ๊ณต๊ธ๋ง ํฌ๋ช ์ฑ: ๊ฐ ๋จ๊ณ์์ ๊ฒ์ฆ ๊ฐ๋ฅํ ์ฆ๋ช ๊ณผ ํจ๊ป ์์ฐ์ง๋ถํฐ ์๋น์๊น์ง ์ํ์ ์ถ์ ํฉ๋๋ค.
- ๋์งํธ ์ ์ ๋ฐ ์๊ฒฉ ์ฆ๋ช : ์ค์ ๊ธฐ๊ด์ ์์กดํ์ง ์๊ณ ๊ฐ์ธ ๋ฐ์ดํฐ๋ฅผ ์์ ํ๊ฒ ๊ด๋ฆฌํ๊ณ ๊ฒ์ฆํฉ๋๋ค.
- ๊ฒ์ฆ ๊ฐ๋ฅํ ์ฐ์ฐ: ํด๋ผ์ฐ๋ ์ปดํจํ ๋ฐ ์์ง์ ์ฆ๋ช ์ ํ์์ ์ธ, ์ฌ์คํ ์์ด ์ฐ์ฐ์ด ์ฌ๋ฐ๋ฅด๊ฒ ์ํ๋์์์ ์ฆ๋ช ํฉ๋๋ค.
- IoT ๋ณด์: ๋ฐฉ๋ํ ์ฌ๋ฌผ ์ธํฐ๋ท ์ฅ์น ๋คํธ์ํฌ์์ ์์ง๋ ๋ฐ์ดํฐ์ ๋ฌด๊ฒฐ์ฑ์ ๋ณด์ฅํฉ๋๋ค.
- ๊ท์ ์ค์ ๋ฐ ๊ฐ์ฌ ์ถ์ : ์ ์ธ๊ณ ๊ท์ ๊ธฐ๊ด์ ์ํด ํน์ ์์ ์ ๋ฐ์ดํฐ ์ํ์ ๋ํ ๋ถ์ธํ ์ ์๋ ์ฆ๋ช ์ ์ ๊ณตํฉ๋๋ค.
์ ์ธ๊ณ์ ์ผ๋ก ์ํธ ์ฐ๊ฒฐ๋ ํ๊ฒฝ์์ ์ด์๋๋ ์กฐ์ง๊ณผ ๊ฐ์ธ์๊ฒ ๋จธํด ํธ๋ฆฌ ๊ธฐ์ ์ ์ดํดํ๊ณ ํ์ฉํ๋ ๊ฒ์ ๋ ์ด์ ์ ํ ์ฌํญ์ด ์๋๋ผ ์ ๋ต์ ํ์ ์ฌํญ์ ๋๋ค. ๋ฐ์ดํฐ ๊ด๋ฆฌ์ ํต์ฌ์ ์ํธํ ๊ฒ์ฆ ๊ฐ๋ฅ์ฑ์ ๋ด์ฅํจ์ผ๋ก์จ ๋จธํด ํธ๋ฆฌ๋ ์ฐ๋ฆฌ๊ฐ ๋ ํฌ๋ช ํ๊ณ ์์ ํ๋ฉฐ ์ ๋ขฐํ ์ ์๋ ๋์งํธ ์ํ๊ณ๋ฅผ ๊ตฌ์ถํ ์ ์๋๋ก ์ง์ํฉ๋๋ค.
๊ฒฐ๋ก
1979๋ ๋ํ ๋จธํด์ด ๋ฐ๋ช ํ ๋จธํด ํธ๋ฆฌ๋ ์ค๋๋ ๋์งํธ ํ๊ฒฝ์์ ๋๋๋๋ก ๊ด๋ จ์ฑ์ด ๋๊ณ ๊ทผ๋ณธ์ ์ธ ์ญํ ์ ํ๊ณ ์์ต๋๋ค. ๋ฐฉ๋ํ ์์ ๋ฐ์ดํฐ๋ฅผ ๋จ์ผํ๊ณ ๊ฒ์ฆ ๊ฐ๋ฅํ ํด์๋ก ์์ถํ๋ ๋ฅ๋ ฅ๊ณผ ๋จธํด ์ฆ๋ช ์ ํจ์จ์ฑ์ด ๊ฒฐํฉ๋์ด, ํนํ ๋ธ๋ก์ฒด์ธ ๋ฐ ๋ถ์ฐ ์์คํ ์ ๋ถ์ฐ ํจ๋ฌ๋ค์ ๋ด์์ ๋ฐ์ดํฐ ๋ฌด๊ฒฐ์ฑ์ ์ ๊ทผํ๋ ๋ฐฉ์์ ํ๋ช ์ ๊ฐ์ ธ์์ต๋๋ค.
๋นํธ์ฝ์ธ์์ ๊ธ๋ก๋ฒ ๊ธ์ต ๊ฑฐ๋๋ฅผ ๋ณดํธํ๋ ๊ฒ๋ถํฐ IPFS์์ ์ฝํ ์ธ ์ ์ง์ ์ฑ์ ๋ณด์ฅํ๊ณ Git์์ ์ํํธ์จ์ด ๋ณ๊ฒฝ ์ฌํญ์ ์ถ์ ํ๋ ๊ฒ์ ์ด๋ฅด๊ธฐ๊น์ง, ๋จธํด ํธ๋ฆฌ๋ ์ํธํ ๊ฒ์ฆ์ ์จ์ ์์ ์ ๋๋ค. ๋ฐ์ดํฐ๊ฐ ๋์์์ด ์์ง์ด๊ณ ์ ๋ขฐ๊ฐ ์ต์ฐ์ ์ธ ์ธ์์์ ์ฐ๋ฆฌ๊ฐ ๊ณ์ ๋์๊ฐ๋ฉด์, ๋จธํด ํธ๋ฆฌ์ ์๋ฆฌ์ ์์ฉ์ ์์ฌํ ์ฌ์ง ์์ด ์งํํ๋ฉฐ ์ง์ ํ ๊ธ๋ก๋ฒ ์ฒญ์ค์ ์ํ ์ฐจ์ธ๋ ๋ณด์ ๋ฐ ๊ฒ์ฆ ๊ฐ๋ฅ ๊ธฐ์ ์ ๋ท๋ฐ์นจํ ๊ฒ์ ๋๋ค.